package cn.stylefeng.guns.modular.basic.entity;

import java.io.Serializable;
import java.util.Date;

import com.baomidou.mybatisplus.annotation.FieldFill;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;

import lombok.Data;

/**
 * 库区表
 */
@TableName("basic_area")
@Data
public class BasicArea implements Serializable {

    private static final long serialVersionUID = 1L;

    /**
     * 主键
     */
    @TableId(value = "id", type = IdType.AUTO)
    private Integer id;

    /**
     * 仓库id
     */
    @TableField("area_warehouse_id")
    private Integer areaWarehouseId;

    /**
     * 所属仓库
     */
    @TableField("area_warehouse_name")
    private String areaWarehouseName;

    /**
     * 库区名称
     */
    @TableField("area_name")
    private String areaName;

    /**
     * 库区编号
     */
    @TableField("area_number")
    private String areaNumber;

    /**
     * 面积
     */
    @TableField("area_measure")
    private String areaMeasure;

    /**
     * 品类
     */
    @TableField("area_product")
    private String areaProduct;

    /**
     * 库区功能
     */
    @TableField("area_function")
    private String areaFunction;

    /**
     * 保管条件
     */
    @TableField("area_condition")
    private String areaCondition;

    /**
     * 物料大类
     */
    @TableField("bigtypes")
    private String bigtypes;

    /**
     * 库区类型
     */
    @TableField("area_type")
    private String areaType;

    /**
     * 库区状态
     */
    @TableField("area_state")
    private String areaState;

    /**
     * 交付客户id
     */
    @TableField("deliver_id")
    private Long deliverId;

    /**
     * 备注
     */
    @TableField("area_notes")
    private String areaNotes;

    /**
     * 乐观锁
     */
    @TableField("version")
    private Integer version;

    /**
     *是否拆零区
     */
    @TableField("dismantling_parts")
    private String dismantlingParts;

    /**
     * 创建时间
     */
    @TableField(value = "create_time", fill = FieldFill.INSERT)
    private Date createTime;

    /**
     * 修改时间
     */
    @TableField(value = "update_time", fill = FieldFill.UPDATE)
    private Date updateTime;

    /**
     * 创建用户
     */
    @TableField(value = "create_user", fill = FieldFill.INSERT)
    private Long createUser;

    /**
     * 修改用户
     */
    @TableField(value = "update_user", fill = FieldFill.UPDATE)
    private Long updateUser;


    @Override
    public String toString() {
        return "BasicArea{" +
        "id=" + id +
        ", areaWarehouseId=" + areaWarehouseId +
        ", areaWarehouseName=" + areaWarehouseName +
        ", areaName=" + areaName +
        ", areaNumber=" + areaNumber +
        ", areaMeasure=" + areaMeasure +
        ", areaProduct=" + areaProduct +
        ", areaFunction=" + areaFunction +
        ", areaCondition=" + areaCondition +
        ", areaType=" + areaType +
        ", areaState=" + areaState +
        ", deliverId=" + deliverId +
        ", areaNotes=" + areaNotes +
        ", version=" + version +
        ", createTime=" + createTime +
        ", updateTime=" + updateTime +
        ", createUser=" + createUser +
        ", updateUser=" + updateUser +
        ", bigtypes=" + bigtypes +
        "}";
    }
}
